﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using HiLand.Framework.BusinessCore;
using HiLand.Framework.FoundationLayer;

namespace GBFinance.Web.Models
{
    public class BrokerEntity : BusinessUser
    {
        private static BrokerEntity empty = null;
        public new static BrokerEntity Empty
        {
            get
            {
                if (empty == null)
                {
                    empty = new BrokerEntity();
                    empty.isEmpty = true;
                }

                return empty;
            }
        }

        public string BrokerCompanyName
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerCompanyName"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerCompanyName", value); }
        }

        public string BrokerABN
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerABN"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerABN", value); }
        }

        public string BrokerAddress
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerAddress"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerAddress", value); }
        }

        public string BrokerState
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerState"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerState", value); }
        }

        public string BrokerBank
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerBank"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerBank", value); }
        }

        public string BrokerBSB
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerBSB"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerBSB", value); }
        }

        public string BrokerBankAccountNumber
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerBankAccountNumber"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerBankAccountNumber", value); }
        }

        public string BrokerBankAccountName
        {
            get { return ((IModelExtensible)this).ExtensiableRepository.GetExtentibleProperty("BrokerBankAccountName"); }
            set { ((IModelExtensible)this).ExtensiableRepository.SetExtentibleProperty("BrokerBankAccountName", value); }
        }
    }
}